package com.wyz.mapper;
import com.wyz.entity.Marktable;
import com.wyz.entity.Student;
import com.wyz.entity.Testpaper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 成绩表功能接口
 */
@Mapper
public interface MarktableDao {
    /**
     * 按学生对象进行成绩查询
     * @param student
     * @return
     */
    public List<Marktable> getStudent(Student student);

    /**
     * 按编号查询某个成绩
     * @param id
     * @return
     */
    public Marktable getIdInfo(int id);

    /**
     * 按班级和时间进行查询成绩
     * @return
     */
    public Marktable getDateAndClass(@Param("classes") String classes, @Param("openDate") String openDate);

    /**
     *按试卷类型进行成绩查询
     * @return
     */
    public List<Marktable> getTestTypeInfo(int testType);

    /**
     * 按试卷对象进行一个成绩查询
     * @param testpaper
     * @return
     */
    public List<Marktable> getTestpaperInfo(Testpaper testpaper);

    /**
     * 向数据库中添加一条成绩信息
     * @param marktable
     * @return
     */
    public int insert(Marktable marktable);

    /**
     * 更新数据库中某条成绩信息，一般生成后就被固定死了，所以此操作可以不进行使用
     * @param martable
     * @return
     */
    public int update (Marktable martable);

    /**
     * 按试卷编号删除某个成绩信息，后期考虑如何使用
     * @param id
     * @return
     */
    public int delete (int id);

}
